home *** CD-ROM | disk | FTP | other *** search
- <?xml version='1.0' encoding='EUC-KR' ?>
- <!DOCTYPE manualpage SYSTEM "./style/manualpage.dtd">
- <?xml-stylesheet type="text/xsl" href="./style/manual.ko.xsl"?>
- <!-- English Revision: 1.1.2.15 -->
-
- <!--
- Copyright 2003-2004 The Apache Software Foundation
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-
- <manualpage metafile="content-negotiation.xml.meta">
-
- <title>│╗┐δ╟∙╗≤ (Content Negotiation)</title>
-
- <summary>
-
- <p>╛╞╞──í┤┬ HTTP/1.1 ▒╘╛α┐í ▒Γ╝·╡╚ │╗┐δ╟∙╗≤(content
- negotiation)└╗ ┴÷┐°╟╤┤┘. │╗┐δ╟∙╗≤└║ media type, ╛≡╛ε, ╣«└┌┴²╟╒,
- └╬─┌╡∙ ╡ε┐í ┤δ╟╪ ║Ω╢≤┐∞└·░í ┴ª░°╟╤ ╝▒╚ú╡╡┐í ╡√╢≤ └┌┐°└╟
- ░í└σ └√╟╒╟╤ ╟Ñ╟÷└╗ ╝▒┼├╟╤┤┘. ╢╟ ║╥┐╧└ⁿ╟╤ ╟∙╗≤ ┴ñ║╕╕ª ║╕│╗┤┬
- ║Ω╢≤┐∞└·└╟ ┐Σ├╗└╗ ┴÷┤╔└√└╕╖╬ ├│╕«╟╧┤┬ ▒Γ┤╔╡╡ └╓┤┘.</p>
-
- <p>▒Γ║╗└√└╕╖╬ ──╞─└╧╡╟┤┬ <module>mod_negotiation</module>
- ╕≡╡Γ└╠ │╗┐δ╟∙╗≤ ▒Γ┤╔└╗ ┴ª░°╟╤┤┘.</p>
- </summary>
-
- <section id="about"><title>│╗┐δ╟∙╗≤┐í ┤δ╟╪</title>
-
- <p>└┌┐°└║ ┐⌐╖» ┤┘╕Ñ ╟Ñ╟÷└╗ ░í┴· ╝÷ └╓┤┘. ┐╣╕ª ╡Θ╛ε, ┤┘╕Ñ
- ╛≡╛ε│¬ ┤┘╕Ñ media type ╚ñ└║ ╡╤ ╕≡╡╬░í ┤┘╕Ñ ╟Ñ╟÷╡Θ└╠ └╓└╗
- ╝÷ └╓┤┘. ░í└σ └√┤τ╟╤ ╟Ñ╟÷└╗ ╝▒┼├╟╧┤┬ ╟╤░í┴÷ ╣µ╣²└║ ╗τ┐δ└┌┐í░╘
- ╕±╖╧ ╞Σ└╠┴÷╕ª ║╕┐⌐┴╓░φ ╝▒┼├╟╧░╘ ╟╧┤┬ ░═└╠┤┘. ▒╫╖»│¬ ╝¡╣÷░í
- └┌╡┐└╕╖╬ ╝▒┼├╟╧┤┬ ░═╡╡ ░í┤╔╟╧┤┘. └╠┤┬ ║Ω╢≤┐∞└·░í ┐Σ├╗└╟
- └╧║╬╖╬ ▒╫╡Θ└╠ ╝▒╚ú╟╧┤┬ ╟Ñ╟÷┐í ┤δ╟╤ ┴ñ║╕╕ª ║╕│╗▒Γ╢º╣«┐í
- ░í┤╔╟╧┤┘. ┐╣╕ª ╡Θ╛ε, ║Ω╢≤┐∞└·┤┬ ░í┤╔╟╤╟╤ ║╥╛ε╖╬, ▒╫╖»│¬
- ╛°┤┘╕Θ ┐╡╛ε╖╬ ┴ñ║╕╕ª ║╕░φ╜═┤┘░φ ╛╦╖┴┴┘ ╝÷ └╓┤┘. ║Ω╢≤┐∞└·┤┬
- ┐Σ├╗└╟ ╟∞┤⌡╖╬ ▒╫╡Θ└╟ ▒Γ╚ú╕ª │¬┼╕│╜┤┘. ┐└┴≈ ║╥╛ε╖╬╡╚ ╟Ñ╟÷╕╕└╗
- ┐Σ├╗╟╤┤┘╕Θ ║Ω╢≤┐∞└·┤┬ ┤┘└╜░· ░░└╠ ║╕│╜┤┘.</p>
-
- <example>Accept-Language: fr</example>
-
- <p>└╠╖▒ ▒Γ╚ú┤┬ ╟Ñ╟÷└╠ ╛≡╛ε║░╖╬ ┤┘╕ª ░µ┐∞┐í╕╕ ░φ╖┴╡╚┤┘.</p>
-
- <p>┤┘└╜└║ ┤⌡ ║╣└Γ╟╤ ┐Σ├╗└╟ ┐╣╖╬ ║Ω╢≤┐∞└·░í ║╥╛ε┐═ ┐╡╛ε╕ª
- ╣▐└╗ ╝÷ └╓┴÷╕╕, ║╥╛ε╕ª ┤⌡ ╝▒╚ú╟╧░φ, ┐⌐╖» media type└╗ ╣▐└╗
- ╝÷ └╓┴÷╕╕, └╧╣▌ ┼╪╜║╞« ║╕┤┘┤┬ HTML, ┤┘╕Ñ media type ║╕┤┘┤┬
- GIF┐═ JPEG└╗ ╝▒╚ú╟╤┤┘░φ ╛╦╖┴┴╪┤┘.</p>
-
- <example>
- Accept-Language: fr; q=1.0, en; q=0.5<br />
- Accept: text/html; q=1.0, text/*; q=0.8, image/gif; q=0.6, image/jpeg; q=0.6, image/*; q=0.5, */*; q=0.1
- </example>
-
- <p>╛╞╞──í┤┬ HTTP/1.1 ▒╘╛α┐í ┴ñ└╟╡╚ '╝¡╣÷ ┴╓╡╡(server driven)'
- │╗┐δ╟∙╗≤└╗ ┴÷┐°╟╤┤┘. ╛╞╞──í┤┬ <code>Accept</code>,
- <code>Accept-Language</code>, <code>Accept-Charset</code>,
- <code>Accept-Encoding</code> ┐Σ├╗ ╟∞┤⌡╕ª ╕≡╡╬ ┴÷┐°╟╤┤┘.
- ╢╟, ╛╞╞──í┤┬ RFC 2295┐═ RFC 2296┐í ┴ñ└╟╡╚ ╜╟╟Φ└√└╬ │╗┐δ╟∙╗≤└╬
- '└┌┐¼╜║╖»┐ε(transparent)' ┐Σ├╗ ╟∞┤⌡╡╡ ┴÷┐°╟╤┤┘. ▒╫╖»│¬ └╠
- RFC┐í ┴ñ└╟╡╚ '▒Γ┤╔ ╟∙╗≤(feature negotiation)'└║ ┴÷┐°╟╧┴÷
- ╛╩┤┬┤┘.</p>
-
- <p><strong>└┌┐°(resource)</strong>└║ (RFC 2396) URI╖╬ ▒╕║░╟╧┤┬
- ░││Σ└√└╬ ┴╕└τ┤┘. ╛╞╞──í┐═ ░░└║ └Ñ╝¡╣÷┤┬ └┌┐°└╟
- <strong>╟Ñ╟÷(representations)</strong>└╗ ┴ª░°╟╤┤┘. ╟Ñ╟÷└║
- ┴÷┴ñ╡╚ media type, ╣«└┌┴²╟╒, └╬─┌╡∙ ╡ε└╗ ░í┴° ╣┘└╠╞«╡Θ╖╬
- ╡╟└╓┤┘. └┌┐°└║ ┐⌐╖» ╟Ñ╟÷░· (╢º╖╬┤┬ ╛°└╗ ╝÷╡╡ └╓┤┘) ┐¼░ⁿ╡╚┤┘.
- └┌┐°┐í ┐⌐╖» ╟Ñ╟÷└╠ └╓┤┘╕Θ └┌┐°└╗
- <strong>╟∙╗≤░í┤╔╟╧┤┘░φ(negotiable)</strong> ║╬╕ú╕τ, └╠╢º
- ░ó ╟Ñ╟÷└╗ <strong>║»╟ⁿ(variant)</strong>└╠╢≤░φ ╟╤┤┘.
- ╟∙╗≤░í┤╔╟╤ └┌┐°└╟ ║»╟ⁿ ┴╛╖∙╕ª ╟∙╗≤└╟
- <strong>╣ⁿ└º(dimension)</strong>╢≤░φ ╟╤┤┘.</p>
- </section>
-
- <section id="negotiation"><title>╛╞╞──í└╟ ╟∙╗≤</title>
-
- <p>└┌┐°└╗ ╟∙╗≤╟╧▒Γ└º╟╪ ╝¡╣÷┤┬ ░ó ║»╟ⁿ┐í ┤δ╟╤ ┴ñ║╕░í ╟╩┐Σ╟╧┤┘.
- ┤┘└╜ ╡╬░í┴÷ ╣µ╣²┴▀ ╟╧│¬╖╬ ┴ñ║╕╕ª ╛≥┤┬┤┘:</p>
-
- <ul>
- <li>║»╟ⁿ└╗ ┤π└║ ╞─└╧╡Θ└╗ ┴≈┴ó ┐¡░┼╟╤ type map└╗ (<em>┐╣╕ª
- ╡Θ╛ε</em>, <code>*.var</code> ╞─└╧) ╗τ┐δ╟╧░┼│¬,</li>
-
- <li>┴≈┴ó ┴÷┴ñ╟╧┴÷╛╩╛╞╡╡ ╝¡╣÷░í ╞─└╧╕φ┐í╝¡ ▒╘─ó└╗ ├ú╛╞╝¡
- ░ß░·╕ª ╝▒┼├╟╧┤┬ 'MultiViews'╕ª ╗τ┐δ╟╤┤┘.</li>
- </ul>
-
- <section id="type-map"><title>type-map ╞─└╧ ╗τ┐δ╟╧▒Γ</title>
-
- <p>type map└║ <code>type-map</code>└╠╢⌡ ╟┌╡Θ╖»┐═ ┐¼░ß╡╚
- (╚ñ└║ └╠└ⁿ ╛╞╞──í ╝│┴ñ░· ╚ú╚»└╗ └º╟╪ MIME type└╠
- <code>application/x-type-map</code>└╬) ╣«╝¡┤┘. └╠ ▒Γ┤╔└╗
- ╗τ┐δ╟╧╖┴╕Θ ╝│┴ñ┐í╝¡ <code>type-map</code> ╟┌╡Θ╖»┐í ┤δ╟╤
- ╞─└╧ ╚«└σ└┌╕ª ┴÷┴ñ╟╪╛▀ ╟╤┤┘. ╝¡╣÷ ╝│┴ñ╞─└╧┐í ┤┘└╜░· ░░└╠
- ╝│┴ñ╟╧┤┬ ░═└╠ ┴┴┤┘.</p>
-
- <example>AddHandler type-map .var</example>
-
- <p>Type map ╞─└╧└║ ╟╪┤τ╟╧┤┬ └┌┐°░· └╠╕º└╠ ░░╛╞╛▀ ╟╧░φ,
- ░ó ║»╟ⁿ┐í ┤δ╟╤ ╟╫╕±└╠ └╓╛ε╛▀ ╟╤┤┘. ╟╫╕±└║ ┐⌐╖» HTTP╟ⁿ╜─
- ╟∞┤⌡ ┴┘╖╬ ▒╕╝║╡╚┤┘. ║»╟ⁿ┐í ┤δ╟╤ ░ó░ó└╟ ╟╫╕±╡Θ└║ ║≤┴┘╖╬
- ▒╕║╨╟╤┤┘. ╟╫╕±╛╚┐í╝¡ ║≤┴┘└╗ ╗τ┐δ╟╥ ╝÷ ╛°┤┘. (└╠╖╕░╘ ╟╥
- ╟╩┐Σ░í ╛°░φ, └╓╛ε╡╡ ╣½╜├╟╧┴÷╕╕) ┐⌐╖» ╟╫╕±└╠ ░°┼δ└╕╖╬ ░í┴÷░φ
- └╓┤┬ │╗┐δ└╕╖╬ map ╞─└╧└╗ ╜├└█╟╧┤┬ ░═└╠ ║╕┼δ└╠┤┘. ┤┘└╜└║
- map ╞─└╧ ┐╣┤┘. └╠ ╞─└╧└╟ └╠╕º└║ <code>foo.var</code>╖╬,
- <code>foo</code>╢≤┤┬ └┌┐°└╗ ╝│╕φ╟╤┤┘.</p>
-
- <example>
- URI: foo<br />
- <br />
- URI: foo.en.html<br />
- Content-type: text/html<br />
- Content-language: en<br />
- <br />
- URI: foo.fr.de.html<br />
- Content-type: text/html;charset=iso-8859-2<br />
- Content-language: fr, de<br />
- </example>
- <p>typemap ╞─└╧└╠ ╞─└╧╕φ ╚«└σ└┌ ║╕┤┘, ╜╔┴÷╛ε Multiviews╕ª
- ╗τ┐δ╟╧┐⌐╡╡, ┐∞╝▒▒╟└╗ ░í┴ⁿ└╗ ┴╓└╟╟╧╢≤. ║»╟ⁿ└╠ ╝¡╖╬ ┤┘╕Ñ ╟░┴·└╗
- ░í┴°┤┘╕Θ, ┤┘└╜░· ░░└╠ (JPEG, GIF, ASCII-art┐í ╟╪┤τ╟╧┤┬)
- media type┐í "qs" ╞─╢≤╣╠┼═╖╬ ╟░┴·(source quality)└╗ ╟Ñ╜├╟╥
- ╝÷ └╓┤┘:</p>
-
- <example>
- URI: foo<br />
- <br />
- URI: foo.jpeg<br />
- Content-type: image/jpeg; qs=0.8<br />
- <br />
- URI: foo.gif<br />
- Content-type: image/gif; qs=0.5<br />
- <br />
- URI: foo.txt<br />
- Content-type: text/plain; qs=0.01<br />
- </example>
-
- <p>qs ░¬└║ 0.000┐í╝¡ 1.000 ╗τ└╠┤┘. qs ░¬└╠ 0.000└╬ ║»╟ⁿ└║
- └²┤δ ╝▒┼├╡╟┴÷ ╛╩└╜└╗ ┴╓└╟╟╧╢≤. 'qs' ░¬└╠ ╛°┤┬ ║»╟ⁿ└║ 1.0└╕╖╬
- ├δ▒▐╡╚┤┘. qs ░¬└║ ┼¼╢≤└╠╛≡╞«└╟ ┤╔╖┬░·┤┬ ░ⁿ░Φ╛°└╠ ┤┘╕Ñ ║»╟ⁿ╡Θ░·
- ║±▒│╟╧┐⌐ ▒╫ ║»╟ⁿ└╟ ╗≤┤δ└√└╬ '╟░┴·'└╗ │¬┼╕│╜┤┘. ┐╣╕ª ╡Θ╛ε,
- ╗τ┴°└╗ │¬┼╕│╗╖┴┤┬ ░µ┐∞ JPEG ╞─└╧└╠ ASCII ╞─└╧║╕┤┘┤┬ ╟╫╗≤
- │⌠└║ ╟░┴·└╗ ░í┴°┤┘. ▒╫╖»│¬ └┌┐°└╠ ┐°╖í ASCII art┐┤┤┘╕Θ
- ASCII ╟Ñ╟÷└╠ JPEG ╟Ñ╟÷║╕┤┘ ┤⌡ │⌠└║ ╟░┴·└╗ ░í┴· ╝÷ └╓┤┘.
- ▒╫╖»╣╟╖╬ ╛ε╢▓ ║»╟ⁿ└╟ qs ░¬└║ ╟Ñ╟÷╟╧╖┴┤┬ └┌┐°└╟ ╝║┴·┐í
- ╡√╢≤ ┤┘╕ú┤┘.</p>
-
- <p>┴÷┐°╟╧┤┬ ╕≡╡τ ╟∞┤⌡ ╕±╖╧└║ <a
- href="mod/mod_negotiation.html#typemaps">mod_negotation
- typemap</a> ╣«╝¡╕ª ┬ⁿ░φ╟╧╢≤.</p>
- </section>
-
- <section id="multiviews"><title>Multiviews</title>
-
- <p><code>MultiViews</code>┤┬ ╡≡╖║┼Σ╕«║░ ┐╔╝╟└╠╣╟╖╬,
- <code>httpd.conf</code>└╟
- <directive module="core" type="section">Directory</directive>,
- <directive module="core" type="section">Location</directive>,
- <directive module="core" type="section">Files</directive>
- ╝╜╝╟ ╚ñ└║ (<directive module="core">AllowOverride</directive>░í
- └√└²╚≈ ╝│┴ñ╡╟╛·┤┘╕Θ) <code>.htaccess</code> ╞─└╧└╟
- <directive module="core">Options</directive> ┴÷╜├╛ε┐í ╝│┴ñ╟╥
- ╝÷ └╓┤┘. <code>Options All</code>└║ <code>MultiViews</code>╕ª
- ╞≈╟╘╟╧┴÷╛╩└╜└╗ ┴╓└╟╟╧╢≤. ╡√╖╬ ┴≈┴ó ╜ß┴α╛▀ ╟╤┤┘.</p>
-
- <p><code>MultiViews</code>╕ª ╗τ┐δ╟╧╕Θ ┤┘└╜░· ░░└║ └╧└╠ └╧╛ε│¡┤┘:
- ╝¡╣÷░í <code>/some/dir/foo</code>┐í ┤δ╟╤ ┐Σ├╗└╗ ╣▐░φ
- <code>/some/dir/foo</code>┐í <code>MultiViews</code>░í ╡┐└█╟╧╕τ
- <code>/some/dir/foo</code>░í ┴╕└τ╟╧┴÷ <em>╛╩└╗</em> ░µ┐∞,
- ╝¡╣÷┤┬ ╡≡╖║┼Σ╕«┐í╝¡ └╠╕º└╠ foo.*└╬ ╞─└╧╡Θ└╗ ╕≡╡τ ╞≈╟╘╟╧┤┬
- ░í╗≤└╟ type map└╗ ╕╕╡τ┤┘. ┼¼╢≤└╠╛≡╞«░í ┐Σ├╗╟╤ media type░·
- content-encoding└╗ ░í┴÷░φ └╠┴▀┐í ░í└σ └√╟╒╟╤ ░═└╗ ╝▒┼├╟╤┤┘.</p>
-
- <p><code>MultiViews</code>┤┬ ╝¡╣÷░í ╡≡╖║┼Σ╕«╕ª ┬ⁿ┴╢╟╥╢º
- ╞─└╧└╗ ├ú┤┬ <directive
- module="mod_dir">DirectoryIndex</directive> ┴÷╜├╛ε┐í╡╡
- └√┐δ╡╚┤┘. ╝│┴ñ╞─└╧└╠ ┤┘└╜░· ░░┤┘╕Θ,</p>
- <example>DirectoryIndex index</example>
- <p><code>index.html</code>░· <code>index.html3</code>└╠
- ╕≡╡╬ └╓┤┘╕Θ ╝¡╣÷┤┬ └╠╡╤ ┴▀┐í ╟╧│¬╕ª ░ß┴ñ╟╤┤┘. ╡╤ ╕≡╡╬ ╛°░φ
- <code>index.cgi</code>░í └╓┤┘╕Θ, ╝¡╣÷┤┬ ▒╫░═└╗ ╜╟╟α╟╤┤┘.</p>
-
- <p>╡≡╖║┼Σ╕«╕ª └╨└╗╢º ╞─└╧┴▀ ╟╧│¬░í Charset, Content-Type,
- Language, Encoding╕ª ╞╟┤▄╟╧┤┬ <code>mod_mime</code>└╠ ╕≡╕ú┤┬
- ╚«└σ└┌╕ª ░í┴°┤┘╕Θ, ░ß░·┤┬ <directive
- module="mod_mime">MultiViewsMatch</directive> ┴÷╜├╛ε ╝│┴ñ┐í
- ┤▐╖╟┤┘. └╠ ┴÷╜├╛ε┤┬ ╟┌╡Θ╖», ╟╩┼═, ┤┘╕Ñ ╚«└σ╟ⁿ╡Θ└╠ MultiViews
- ╟∙╗≤┐í ┬ⁿ┐⌐╟╥┴÷ ┐⌐║╬╕ª ░ß┴ñ╟╤┤┘.</p>
- </section>
- </section>
-
- <section id="methods"><title>╟∙╗≤╣µ╣²</title>
-
- <p>╛╞╞──í░í type-map ╞─└╧└╠│¬ ╡≡╖║┼Σ╕«┐í └╓┤┬ ╞─└╧╕φ╡Θ╖╬
- ┴╓╛ε┴° └┌┐°┐í ┤δ╟╤ ║»╟ⁿ ╕±╖╧└╗ ╛≥░╘╡╟╕Θ '├╓└√└╟' ║»╟ⁿ└╗
- ░ß┴ñ╟╧▒Γ└º╟╪ ╡╬ ╣µ╣²┴▀ ╟╧│¬╕ª ╗τ┐δ╟╤┤┘. ╛╞╞──í │╗┐δ╟∙╗≤
- ▒Γ┤╔└╗ ╗τ┐δ╟╧▒Γ└º╟╪ ┴ñ╚«╚≈ ╟∙╗≤└╠ ╛ε╢╗░╘ └╧╛ε│¬┤┬┴÷ └┌╝╝╚≈
- ╛╦ ╟╩┐Σ┤┬ ╛°┤┘. ▒╫╖»│¬ ▒├▒▌╟╤ ╗τ╢≈└╗ └º╟╪ └╠ ╣µ╣²└╗ ╝│╕φ╟╤┤┘.</p>
-
- <p>╡╬░í┴÷ ╟∙╗≤╣µ╣²└╠ └╓┤┘:</p>
-
- <ol>
- <li><strong>╛╞╞──í ╛╦░φ╕«┴≥└╗ ╗τ┐δ╟╧┐⌐ ╝¡╣÷░í ┴╓╡╡╟╧┤┬
- ╟∙╗≤</strong>└║ └╧╣▌└√└╬ ░µ┐∞┐í ╗τ┐δ╟╤┤┘. ╛╞╞──í ╛╦░φ╕«┴≥└║
- ╛╞╖í╝¡ └┌╝╝╚≈ ╝│╕φ╟╤┤┘. └╠ ╛╦░φ╕«┴≥└╗ ╗τ┐δ╟╧╕Θ ╛╞╞──í┤┬
- ┤⌡ │¬└║ ░ß░·╕ª ╛≥▒Γ└º╟╪ ┴╛┴╛ ╞»┴ñ ╣ⁿ└º└╟
- ╟░┴·░Φ╝÷(quality factor)╕ª '┴╢└█╟╤┤┘'. ╛╞╞──í░í ╟░┴·░Φ╝÷╕ª
- ┴╢└█╟╧┤┬ ╣µ╣²└║ ╛╞╖í╝¡ └┌╝╝╚≈ ╝│╕φ╟╤┤┘.</li>
-
- <li><strong>└┌┐¼╜║╖»┐ε(Transparent) │╗┐δ╟∙╗≤</strong>└║
- ║Ω╢≤┐∞└·░í RFC 2295┐í ┴ñ└╟╡╚ ╣µ╣²└╕╖╬ ┐Σ├╗╟╥ ░µ┐∞┐í╕╕
- ╗τ┐δ╟╤┤┘. └╠ ╟∙╗≤╣µ╣²└║ '├╓└√└╟' ║»╟ⁿ└╗ ░ß┴ñ╟╥ ▒╟╟╤└╗
- ║Ω╢≤┐∞└·┐í░╘ ║╬┐⌐╟╤┤┘. ▒╫╖í╝¡ ░ß░·┤┬ ║Ω╢≤┐∞└·└╟ ╛╦░φ╕«┴≥┐í
- ┤▐╖╚┤┘. └┌┐¼╜║╖»┐ε ╟∙╗≤░·┴ñ┴▀┐í ║Ω╢≤┐∞└·┤┬ ╛╞╞──í┐í░╘
- RFC 2296┐í ┴ñ└╟╡╚ '┐°░▌ ║»╟ⁿ╝▒┼├ ╛╦░φ╕«┴≥(remote variant
- selection algorithm)'└╗ ┐Σ├╗╟╥ ╝÷ └╓┤┘.</li>
- </ol>
-
- <section id="dimensions"><title>╟∙╗≤└╟ ╣ⁿ└º</title>
-
- <table>
- <columnspec><column width=".15"/><column width=".85"/></columnspec>
- <tr valign="top">
- <th>╣ⁿ└º</th>
-
- <th>╝│╕φ</th>
- </tr>
-
- <tr valign="top">
- <td>Media Type</td>
-
- <td>║Ω╢≤┐∞└·┤┬ <code>Accept</code> ╟∞┤⌡╖╬ ╝▒╚ú╕ª │¬┼╕│╜┤┘.
- ░ó ╟╫╕±└║ ╟░┴·░Φ╝÷╕ª ░í┴· ╝÷ └╓┤┘. ║»╟ⁿ└╟ ╝│╕φ╡╡ ╟░┴·░Φ╝÷╕ª
- ("qs" ╞─╢≤╣╠┼═) ░í┴· ╝÷ └╓┤┘.</td>
- </tr>
-
- <tr valign="top">
- <td>Language</td>
-
- <td>║Ω╢≤┐∞└·┤┬ <code>Accept-Language</code> ╟∞┤⌡╖╬ ╝▒╚ú╕ª
- │¬┼╕│╜┤┘. ░ó ╟╫╕±└║ ╟░┴·░Φ╝÷╕ª ░í┴· ╝÷ └╓┤┘. ║»╟ⁿ└║
- ┐⌐╖» ╛≡╛ε╕ª ░í┴· (╚ñ└║ ╛╞╣½ ╛≡╛ε╡╡ ╛°└╗) ╝÷ └╓┤┘.</td>
- </tr>
-
- <tr valign="top">
- <td>Encoding</td>
-
- <td>║Ω╢≤┐∞└·┤┬ <code>Accept-Encoding</code> ╟∞┤⌡╖╬ ╝▒╚ú╕ª
- │¬┼╕│╜┤┘. ░ó ╟╫╕±└║ ╟░┴·░Φ╝÷╕ª ░í┴· ╝÷ └╓┤┘.</td>
- </tr>
-
- <tr valign="top">
- <td>Charset</td>
-
- <td>║Ω╢≤┐∞└·┤┬ <code>Accept-Charset</code> ╟∞┤⌡╖╬ ╝▒╚ú╕ª
- │¬┼╕│╜┤┘. ░ó ╟╫╕±└║ ╟░┴·░Φ╝÷╕ª ░í┴· ╝÷ └╓┤┘. ║»╟ⁿ└║
- media type└╟ ╞─╢≤╣╠┼═╖╬ ╣«└┌┴²╟╒└╗ │¬┼╕│╛ ╝÷ └╓┤┘.</td>
- </tr>
- </table>
- </section>
-
- <section id="algorithm"><title>╛╞╞──í ╟∙╗≤ ╛╦░φ╕«┴≥</title>
-
- <p>╛╞╞──í┤┬ ║Ω╢≤┐∞└·┐í░╘ ║╕│╛ '├╓└√└╟' ║»╟ⁿ└╗ (└╓┤┘╕Θ)
- ╝▒┼├╟╧▒Γ└º╟╪ ╛╞╖í ╛╦░φ╕«┴≥└╗ ╗τ┐δ╟╤┤┘. └╠ ╛╦░φ╕«┴≥└║ ║»░µ╟╥
- ╝÷ ╛°┤┘. ┤┘└╜┐═ ░░└╠ ╡┐└█╟╤┤┘:</p>
-
- <ol>
- <li>╕╒└·, ╟∙╗≤└╟ ░ó ╣ⁿ└º┐í ┤δ╟╪ ╟╪┤τ╟╧┤┬ <em>Accept*</em>
- ╟∞┤⌡╕ª ░╦╗τ╟╧░φ, ░ó ║»╟ⁿ┐í ╟░┴·░¬└╗ ╕┼▒Σ┤┘. ╛ε╢▓ ╣ⁿ└º└╟
- <em>Accept*</em> ╟∞┤⌡░í ╣▐╛╞╡Θ└╠┴÷ ╛╩┤┬ ║»╟ⁿ└║ ╚─║╕┐í╝¡
- ┴ª┐▄╟╤┤┘. ╛ε╢▓ ║»╟ⁿ╡╡ │▓┴÷╛╩└╕╕Θ 4 ┤▄░Φ╖╬ ░ú┤┘.</li>
-
- <li>
- ╚─║╕┐í╝¡ ╟╧│¬╛┐ ┴ª┐▄╟╧┐⌐ '├╓└√└╟' ║»╟ⁿ└╗ ├ú┤┬┤┘. ┤┘└╜
- ░ó ░╦╗τ┤┬ ╝°╝¡┤δ╖╬ └╧╛ε│¡┤┘. ░ó ░╦╗τ┐í╝¡ ╝▒┼├╡╟┴÷╛╩└║
- ║»╟ⁿ└║ ┴ª┐▄╡╚┤┘. ░ó ░╦╗τ╚─ ╟╤ ║»╟ⁿ╕╕ │▓└╕╕Θ └╠╕ª ├╓└√└╟
- ║»╟ⁿ└╕╖╬ ╝▒┼├╟╧░φ 3 ┤▄░Φ╖╬ ░ú┤┘. ┐⌐╖» ║»╟ⁿ└╠ │▓└╕╕Θ
- ┤┘└╜ ░╦╗τ╕ª ┴°╟α╟╤┤┘.
-
- <ol>
- <li><code>Accept</code> ╟∞┤⌡└╟ ╟░┴·░Φ╝÷┐═ ║»╟ⁿ└╟
- media type┐í ┤δ╟╤ ╟░┴·░¬└╗ ░÷╟╧┐⌐ ░í└σ │⌠└║ ░¬└╗
- ░í┴° ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.</li>
-
- <li>░í└σ │⌠└║ ╛≡╛ε(language) ╟░┴·░Φ╝÷╕ª ░í┴° ║»╟ⁿ└╗
- ╝▒┼├╟╤┤┘.</li>
-
- <li><code>Accept-Language</code> ╟∞┤⌡┐í (└╓┤┘╕Θ)
- │¬┐┬ ╛≡╛ε└╟ ╝°╝¡ ╚ñ└║ <code>LanguagePriority</code>
- ┴÷╜├╛ε┐í (└╓┤┘╕Θ) │¬┐┬ ╛≡╛ε└╟ ╝°╝¡╕ª ░í┴÷░φ ░í└σ
- └√╟╒╟╤ ╛≡╛ε╕ª ░í┴° ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.</li>
-
- <li>░í└σ │⌠└║ (text/html media type└╟ ╣÷└ⁿ└╗ │¬┼╕│╗┤┬)
- 'level' media ╞─╢≤╣╠┼═╕ª ░í┴° ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.</li>
-
- <li><code>Accept-Charset</code> ╟∞┤⌡╕ª ░í┴÷░φ ░í└σ
- └√╟╒╟╤ charset media ╞─╢≤╣╠┼═╕ª ░í┴° ║»╟ⁿ└╗ ├ú┤┬┤┘.
- ╟∞┤⌡░í ╛°┤┘╕Θ ISO-8859-1 ╣«└┌┴²╟╒└╗ ░í└σ ╝▒╚ú╟╤┤┘.
- <code>text/*</code> media type└╗ ░í┴÷┴÷╕╕ ╕φ╜├└√└╕╖╬
- ╞»┴ñ ╣«└┌┴²╟╒░· ┐¼░ß╡╟┴÷╛╩└║ ║»╟ⁿ└║ ISO-8859-1╖╬
- ░í┴ñ╟╤┤┘.</li>
-
- <li>ISO-8859-1└╠ <em>╛╞┤╤</em> charset media ╞─╢≤╣╠┼═╕ª
- ░í┴° ║»╟ⁿ╡Θ└╗ ╝▒┼├╟╤┤┘. ▒╫╖▒ ║»╟ⁿ└╠ ╛°┤┘╕Θ, ┤δ╜┼ ╕≡╡τ
- ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.</li>
-
- <li>░í└σ └√╟╒╟╤ └╬─┌╡∙└╗ ░í┴° ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.
- user-agent┐í └√╟╒╟╤ └╬─┌╡∙└╗ ░í┴° ║»╟ⁿ└╠ └╓┤┘╕Θ ▒╫
- ║»╟ⁿ╕╕└╗ ╝▒┼├╟╤┤┘. ▒╫╖╕┴÷╛╩░φ └╬─┌╡∙╡╚ ║»╟ⁿ░· └╬─┌╡∙╛╚╡╚
- ║»╟ⁿ└╠ ░░└╠ └╓┤┘╕Θ └╬─┌╡∙╛╚╡╩ ║»╟ⁿ╕╕└╗ ╝▒┼├╟╤┤┘. ║»╟ⁿ└╠
- ╕≡╡╬ └╬─┌╡∙╡╟╛·░┼│¬ ╕≡╡╬ └╬─┌╡∙╛╚╡╚ ░µ┐∞ ╕≡╡τ ║»╟ⁿ└╗
- ╝▒┼├╟╤┤┘.</li>
-
- <li>content length░í ░í└σ └√└║ ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘.</li>
-
- <li>│▓└║ ░═┴▀ ├╣╣°└τ ║»╟ⁿ└╗ ╝▒┼├╟╤┤┘. └╠┤┬ type-map
- ╞─└╧└╟ ╛╒┐í │¬┐╘░┼│¬, ╡≡╖║┼Σ╕«┐í╝¡ ║»╟ⁿ└╗ └╨└║ ░µ┐∞
- ╞─└╧╕φ└╗ ASCII ─┌╡σ ╝°╝¡╖╬ ╟╧┐⌐ ╛╒┐í │¬┐└┤┬ ░═└╠┤┘.</li>
- </ol>
- </li>
-
- <li>└╠┴ª ╛╦░φ╕«┴≥└╠ '├╓└√└╟' ║»╟ⁿ└╗ ╝▒┼├╟▀┤┘. └╠░═└╗ └└┤Σ└╕╖╬
- ║╕│╜┤┘. HTTP └└┤Σ ╟∞┤⌡ <code>Vary</code>┤┬ ╟∙╗≤└╟ ╣ⁿ└º╕ª
- │¬┼╕│╗░╘ ╡╚┤┘. (║Ω╢≤┐∞└·┐═ ─│╜¼┤┬ └┌┐°└╗ ─│╜¼╟╥╢º └╠ ┴ñ║╕╕ª
- ╗τ┐δ╟╥ ╝÷ └╓┤┘.) │í.</li>
-
- <li>└╠ ┤▄░Φ┐í ╡╡┤▐╟▀┤┘╕Θ (╕≡╡╬ ║Ω╢≤┐∞└·░í ╣▐┴÷╕°╟╧▒Γ ╢º╣«┐í)
- ╛ε╢▓ ║»╟ⁿ╡╡ ╝▒┼├└╠ ╛╚╡╚ ░µ┐∞┤┘. ("No acceptable
- representation"╕ª ╢µ╟╧┤┬) ╗≤┼┬ 406░· │╗┐δ└╕╖╬ ╗τ┐δ░í┤╔╟╤
- ║»╟ⁿ└╟ ╕±╖╧└╗ ┤π└║ HTML ╣«╝¡╕ª └└┤Σ└╗ ║╕│╜┤┘. ╢╟, HTML
- <code>Vary</code> ╟∞┤⌡┤┬ ║»╟ⁿ└╟ ╣ⁿ└º╕ª │¬┼╕│╜┤┘.</li>
- </ol>
- </section>
- </section>
-
- <section id="better"><title>╟░┴·░Φ╝÷ ┴╢└█╟╧▒Γ</title>
-
- <p>╛╞╞──í┤┬ ┴╛┴╛ └º└╟ ╛╞╞──í ╟∙╗≤ ╛╦░φ╕«┴≥└╗ ╛÷░▌╚≈ ┴÷┼░┴÷╛╩░φ
- ╟░┴·░Φ╝÷╕ª ║»░µ╟╤┤┘. └╠└»┤┬ ┐╧└ⁿ╟╧░φ ┴ñ╚«╟╤ ┴ñ║╕╕ª ║╕│╗┴÷╛╩┤┬
- ║Ω╢≤┐∞└·┐í░╘ (╛╦░φ╕«┴≥└╟) ┤⌡ │¬└║ ░ß░·╕ª ║╕│╗▒Γ └º╟╪╝¡┤┘.
- │╬╕« ╛▓└╠┤┬ ║Ω╢≤┐∞└·┴▀ └╧║╬┤┬ └┌┴╓ └▀╕°╡╚ ║»╟ⁿ└╗ ╝▒┼├╟╧╡╡╖╧
- <code>Accept</code> ╟∞┤⌡╕ª ║╕│╜┤┘. ║Ω╢≤┐∞└·░í ┐╧└ⁿ╟╧░φ ┐├╣┘╕Ñ
- ┴ñ║╕╕ª ║╕│╜┤┘╕Θ, ┴╢└█└╗ ╟╧┴÷╛╩┤┬┤┘.</p>
-
- <section id="wildcards"><title>Media Type░· ┐═└╧╡σ─½╡σ</title>
-
- <p><code>Accept:</code> ┐Σ├╗ ╟∞┤⌡┤┬ media type┐í ┤δ╟╤ ╝▒╚ú╕ª
- │¬┼╕│╜┤┘. ╢╟, *┤┬ ╛ε╢▓ ╣«└┌┐¡└╠╢≤╡╡ ░í┤╔╟╧▒Γ╢º╣«┐í "image/*"│¬
- "*/*" ░░└╠ '┐═└╧╡σ─½╡σ' media type└╗ ╗τ┐δ╟╥ ╝÷╡╡ └╓┤┘. ▒╫╖í╝¡
- ┤┘└╜░· ░░└║ ┐Σ├╗└║:</p>
-
- <example>Accept: image/*, */*</example>
-
- <p>"image/"╖╬ ╜├└█╟╧┤┬ ╛ε╢▓ type░· ┤┘╕Ñ ╛ε╢▓ type╡╡ ░í┤╔╟╘└╗
- └╟╣╠╟╤┤┘. ╛ε╢▓ ║Ω╢≤┐∞└·┤┬
- └┌╜┼└╠ ╜╟┴ª╖╬ ┤┘╖Ω ╝÷ └╓┤┬ type┐í ├▀░í╖╬ ┐═└╧╡σ─½╡σ╕ª ║╕│╜┤┘.
- ┐╣╕ª ╡Θ╕Θ:</p>
-
- <example>
- Accept: text/html, text/plain, image/gif, image/jpeg, */*
- </example>
- <p>└╠└»┤┬ ┴≈┴ó ┐¡░┼╟╤ type└╗ ╝▒╚ú╟╧┴÷╕╕ ┤┘╕Ñ ╟Ñ╟÷└╠ └╓┤┘╕Θ
- ▒╫░═╡╡ ▒ª┬·└╜└╗ │¬┼╕│╗▒Γ └º╟╪╝¡┤┘. ║Ω╢≤┐∞└·░í ╜╟┴ª╖╬ ┐°╟╤
- ░═└║ ┤┘└╜░· ░░└╠ ╕φ╜├└√└╕╖╬ ╟░┴·░¬└╗ ╗τ┐δ╟╤ ░═└╠┤┘.</p>
- <example>
- Accept: text/html, text/plain, image/gif, image/jpeg, */*; q=0.01
- </example>
- <p>┴≈┴ó ┐¡░┼╟╤ type└║ ╟░┴·░Φ╝÷░í ╛°╛ε╝¡ ▒Γ║╗░¬└╬ (░í└σ │⌠└║)
- 1.0└╗ ░í┴°┤┘. ┐═└╧╡σ─½╡σ */*┤┬ │╖└║ ╝▒╚ú╡╡ 0.01└╗ ░í┴÷╣╟╖╬
- ┴≈┴ó ┐¡░┼╟╤ type┐í ╕┬┤┬ ║»╟ⁿ└╠ ╛°┤┬ ░µ┐∞┐í╕╕ ┤┘╕Ñ type╡Θ└╠
- ╗τ┐δ╡╚┤┘.</p>
-
- <p><code>Accept:</code> ╟∞┤⌡┐í q ░Φ╝÷░í └ⁿ╟⌠ <em>╛°░φ</em>
- "*/*"░í └╓┤┘╕Θ, ╛╞╞──í┤┬ ╣┘╢≈┴≈╟╤ ╟α╡┐└╗ └º╟╪ q ░¬└╕╖╬ 0.01└╗
- ┴÷┴ñ╟╤┤┘. ╢╟, "type/*" ╟ⁿ┼┬└╟ ┐═└╧╡σ─½╡σ┐í┤┬ ("*/*"║╕┤┘┤┬
- ┤⌡ ╝▒╚ú╟╧╡╡╖╧) 0.02╕ª ┴÷┴ñ╟╤┤┘. <code>Accept:</code> ╟∞┤⌡┐í╝¡
- q ░Φ╝÷╕ª ░í┴÷┤┬ media type└╠ └╓┤┘╕Θ └╠╖▒ ╞»║░╟╤ ░¬└╗ ├▀░í╟╧┴÷
- <em>╛╩┤┬┤┘</em>. ▒╫╖í╝¡ ╕φ╜├└√└╬ ┴ñ║╕╕ª ║╕│╗┤┬ ║Ω╢≤┐∞└·└╟
- ┐Σ├╗└║ ┐Σ├╗╟╤╡Ñ╖╬ ├│╕«╟╤┤┘.</p>
- </section>
-
- <section id="exceptions"><title>╛≡╛ε(language) ╟∙╗≤└╟ ┐╣┐▄</title>
-
- <p>╛╞╞──í 2.0└║ ╛≡╛ε ╟∙╗≤└╠ ╜╟╞╨╟╤ ░µ┐∞ ║╬╡σ╖┤░╘ ║╣▒╕╟╧▒Γ└º╟╪
- ╟∙╗≤ ╛╦░φ╕«┴≥┐í ╗⌡╖╬ ┐╣┐▄╕ª ╕ε░│ ├▀░í╟▀┤┘.</p>
-
- <p>┼¼╢≤└╠╛≡╞«░í ╝¡╣÷┐í ╞Σ└╠┴÷╕ª ┐Σ├╗╟▀└╗╢º ╝¡╣÷░í ║Ω╢≤┐∞└·░í
- ║╕│╜ <code>Accept-language</code>┐í ╕┬┤┬ ╞Σ└╠┴÷╕ª ┤▄ ╟╤░│╕╕
- ├ú└╕╕Θ ╣«┴ª░í ╛°┴÷╕╕, ▒╫╖»┴÷ ╛╩└║ ░µ┐∞ ╝¡╣÷┤┬ ┼¼╢≤└╠╛≡╞«┐í░╘
- "No Acceptable Variant"│¬ "Multiple Choices" └└┤Σ└╗ ║╕│╜┤┘.
- └╠╖▒ ┐└╖∙╣«└╗ ╟╟╟╧▒Γ└º╟╪ └╠ ░µ┐∞ <code>Accept-language</code>╕ª
- ╣½╜├╟╧░φ ┼¼╢≤└╠╛≡╞«└╟ ┐Σ├╗┐í ╕φ╚«╚≈ ╕┬┴÷┤┬ ╛╩┴÷╕╕ ╣«╝¡╕ª
- ║╕│╗╡╡╖╧ ╛╞╞──í╕ª ╝│┴ñ╟╥ ╝÷ └╓┤┘. <directive
- module="mod_negotiation">ForceLanguagePriority</directive>
- ┴÷╜├╛ε┤┬ ╝¡╣÷░í └╠╖▒ ┐└╖∙╣«┴▀ ╟╧│¬ ╚ñ└║ ╡╤┤┘╕ª ╣½╜├╟╧░φ
- <directive module="mod_negotiation">LanguagePriority</directive>
- ┴÷╜├╛ε╖╬ ╞╟┤▄╟╧╡╡╖╧ ╟╤┤┘.</p>
-
- <p>╢╟, ╝¡╣÷┤┬ ╕┬┤┬ ╛≡╛ε╕ª ╕°├ú└║ ░µ┐∞ ║╬╕≡╛≡╛ε╕ª ├ú└╗ ╝÷╡╡
- └╓┤┘. ┐╣╕ª ╡Θ╛ε ┼¼╢≤└╠╛≡╞«░í ┐╡▒╣┐╡╛ε╕ª ╢µ╟╧┤┬
- <code>en-GB</code> ╛≡╛ε╖╬ ╣«╝¡╕ª ┐Σ├╗╟╤ ░µ┐∞, HTTP/1.1 ╟Ñ┴╪┐í
- ╡√╕ú╕Θ ╝¡╣÷┤┬ <code>en</code>└╕╖╬╕╕ ╟Ñ╜├╡╚ ╣«╝¡╕ª └╧╣▌└√└╕╖╬
- ╝▒┼├╟╧┴÷ ╕°╟╤┤┘. (▒╫╖í╝¡ ┐╡▒╣┐╡╛ε╕ª └╠╟╪╟╧┤┬ ╡╢└┌░í └╧╣▌└√└╬
- ┐╡╛ε╡╡ └╠╟╪╟╥ ╝÷ └╓└╕╣╟╖╬ <code>Accept-Language</code> ╟∞┤⌡┐í
- <code>en-GB</code>╕╕ ╞≈╟╘╟╧░φ <code>en</code>└╗ ╞≈╟╘╟╧┴÷╛╩└╕╕Θ
- ░┼└╟ ╚«╜╟╚≈ └▀╕°╡╚ ╝│┴ñ└╙└╗ └»└╟╟╧╢≤. ║╥╟α╚≈╡╡ ╟÷└τ ╕╣└║
- ┼¼╢≤└╠╛≡╞«╡Θ└║ └╠╖▒ ╜─└╕╖╬ ▒Γ║╗╝│┴ñ╡╟└╓┤┘.) ┤┘╕Ñ ╛≡╛ε╕ª
- ├ú┴÷ ╕°╟╧┐⌐ ╝¡╣÷░í "No Acceptable Variants" ┐└╖∙╕ª ║╕│╗░┼│¬
- <directive module="mod_negotiation">LanguagePriority</directive>╖╬
- ╡╣╛╞░í╛▀ ╟╤┤┘╕Θ, ╝¡╣÷┤┬ ╟╧└º╛≡╛ε ▒╘╛α└╗ ╣½╜├╟╧░φ
- <code>en-GB</code>╕ª <code>en</code> ╣«╝¡┐í ┤δ└└╟╤┤┘.
- ╛╧╣¼└√└╕╖╬ ╛╞╞──í┤┬ ║╬╕≡╛≡╛ε╕ª ╕┼┐∞ │╖└║ ╟░┴·░¬└╕╖╬
- ┼¼╢≤└╠╛≡╞«└╟ ╟π┐δ╛≡╛ε ╕±╖╧┐í ├▀░í╟╤┤┘. ▒╫╖»│¬ ┼¼╢≤└╠╛≡╞«░í
- "en-GB; q=0.9, fr; q=0.8"└╗ ┐Σ├╗╟╧░φ ╝¡╣÷┐í "en"░· "fr"
- ╣«╝¡░í └╓┤┘╕Θ, "fr" ╣«╝¡░í ╝▒┼├╡╩└╗ ┴╓└╟╟╧╢≤. └╠┤┬ HTTP/1.1
- ╟Ñ┴╪└╗ ┴÷┼░░φ, ┐├╣┘╖╬ ╝│┴ñ╡╚ ┼¼╢≤└╠╛≡╞«┐═ ╚┐└▓└√└╕╖╬
- ╡┐└█╟╧▒Γ└º╟╘└╠┤┘.</p>
-
- <p>╗τ┐δ└┌░í ╝▒╚ú╟╧┤┬ ╛≡╛ε╕ª ╛╦╛╞│╗▒Γ└º╟╤ (─φ┼░│¬ ╞»║░╟╤
- URL-░µ╖╬ ░░└║) ░φ▒▐ ▒Γ╣²└╗ ┴÷┐°╟╧▒Γ└º╟╪ ╛╞╞──í 2.0.47║╬┼═
- <module>mod_negotiation</module>└║ <code>prefer-language</code>╢≤┤┬
- <a href="env.html">╚»░µ║»╝÷</a>╕ª └╬╜─╟╤┤┘. └╠ ╚»░µ║»╝÷░í
- ┴╕└τ╟╧░φ └√└²╟╤ ╛≡╛ε┼┬▒╫╕ª ╞≈╟╘╟╤┤┘╕Θ,
- <module>mod_negotiation</module>└║ ╟╪┤τ╟╧┤┬ ║»╟ⁿ└╗ ╝▒┼├╟╧╖┴░φ
- ╜├╡╡╟╤┤┘. ▒╫╖▒ ║»╟ⁿ└╠ ╛°┤┘╕Θ └╧╣▌└√└╬ ╟∙╗≤░·┴ñ└╗ ╜├└█╟╤┤┘.</p>
-
- <example><title>┐╣┴ª</title>
- SetEnvIf Cookie "language=en" prefer-language=en<br />
- SetEnvIf Cookie "language=fr" prefer-language=fr
- </example>
- </section>
- </section>
-
- <section id="extensions"><title>└┌┐¼╜║╖»┐ε(transparent) │╗┐δ╟∙╗≤└╟ ╚«└σ</title>
-
- <p>╛╞╞──í┤┬ ┤┘└╜░· ░░└╠ └┌┐¼╜║╖»┐ε │╗┐δ╚«└σ ╟┴╖╬┼Σ─▌└╗ (RFC 2295)
- ╚«└σ╟╤┤┘. ║»╟ⁿ ╕±╖╧└╟ ╗⌡╖╬┐ε <code>{encoding ..}</code>┤┬ ╞»┴ñ
- content-encoding└╗ ░í┴° ║»╟ⁿ╕╕└╗ ┴÷─¬╟╤┤┘. RVSA/1.0 ╛╦░φ╕«┴≥└║
- (RFC 2296) ╕±╖╧┐í╝¡ └╬─┌╡∙╡╚ ║»╟ⁿ└╗ └╬╜─╟╥ ╝÷ └╓░φ, └╬─┌╡∙└╠
- <code>Accept-Encoding</code> ┐Σ├╗ ╟∞┤⌡┐í ╕┬┤┬ ░µ┐∞ └╬─┌╡∙╡╚
- ║»╟ⁿ╡Θ╡╡ ╚─║╕╖╬ ╗τ┐δ╟╧╡╡╖╧ ╚«└σ╡╟╛·┤┘. RVSA/1.0 ▒╕╟÷└║ ├╓└√└╟
- ║»╟ⁿ└╗ ├ú▒Γ └ⁿ┐í ░Φ╗Ω╡╚ ╟░┴·░Φ╝÷╕ª ╝╥╝÷┴í 5└┌╕«┐í╝¡ ╣▌┐├╕▓╟╧┴÷
- ╛╩┤┬┤┘.</p>
- </section>
-
- <section id="naming"><title>╟╧└╠╞█╕╡┼⌐┐═ └╠╕º▒╘─ó┐í ┤δ╟╧┐⌐</title>
-
- <p>╛≡╛ε(language) ╟∙╗≤└╗ ╗τ┐δ╟╤┤┘╕Θ ╞─└╧└║ ┐⌐╖» ╚«└σ└┌╕ª
- ░í┴÷░φ ╚«└σ└┌└╟ ╝°╝¡┤┬ ║╕┼δ ░ⁿ░Φ╛°└╕╣╟╖╬ ╞─└╧╕φ┐í ┐⌐╖» ┤┘╕Ñ
- └╠╕º▒╘─ó└╗ ╗τ┐δ╟╥ ╝÷ └╓┤┘. (└┌╝╝╟╤ │╗┐δ└║ <a
- href="mod/mod_mime.html#multipleext">mod_mime</a> ╣«╝¡╕ª
- ┬ⁿ░φ╟╧╢≤.)</p>
-
- <p>└ⁿ╟ⁿ└√└╬ ╞─└╧└║ MIME-type ╚«└σ└┌ (<em>┐╣╕ª ╡Θ╛ε</em>,
- <code>html</code>), ░µ┐∞┐í ╡√╢≤ encoding ╚«└σ└┌ (<em>┐╣╕ª
- ╡Θ╛ε</em>, <code>gz</code>), ╞─└╧┐í ┐⌐╖» ╛≡╛ε ║»╟ⁿ└╠ └╓┤┬
- ░µ┐∞ ╣░╖╨ ╛≡╛ε ╚«└σ└┌╕ª (<em>┐╣╕ª ╡Θ╛ε</em>, <code>en</code>)
- ░í┴°┤┘.</p>
-
- <p>┐╣┴ª:</p>
-
- <ul>
- <li>foo.en.html</li>
-
- <li>foo.html.en</li>
-
- <li>foo.en.html.gz</li>
- </ul>
-
- <p>┤┘└╜└║ ╕ε╕ε ╞─└╧╕φ░· ▒╫ ╞─└╧┐í ┤δ╟╤ └»╚┐╟╧░φ └»╚┐╟╧┴÷╛╩└║
- ╟╧└╠╞█╕╡┼⌐╕ª ║╕└╬┤┘:</p>
-
- <table border="1" cellpadding="8" cellspacing="0">
- <columnspec><column width=".2"/><column width=".2"/>
- <column width=".2"/></columnspec>
- <tr>
- <th>╞─└╧╕φ</th>
-
- <th>└»╚┐╟╤ ╟╧└╠╞█╕╡┼⌐</th>
-
- <th>└»╚┐╟╧┴÷╛╩└║ ╟╧└╠╞█╕╡┼⌐</th>
- </tr>
-
- <tr>
- <td><em>foo.html.en</em></td>
-
- <td>foo<br />
- foo.html</td>
-
- <td>-</td>
- </tr>
-
- <tr>
- <td><em>foo.en.html</em></td>
-
- <td>foo</td>
-
- <td>foo.html</td>
- </tr>
-
- <tr>
- <td><em>foo.html.en.gz</em></td>
-
- <td>foo<br />
- foo.html</td>
-
- <td>foo.gz<br />
- foo.html.gz</td>
- </tr>
-
- <tr>
- <td><em>foo.en.html.gz</em></td>
-
- <td>foo</td>
-
- <td>foo.html<br />
- foo.html.gz<br />
- foo.gz</td>
- </tr>
-
- <tr>
- <td><em>foo.gz.html.en</em></td>
-
- <td>foo<br />
- foo.gz<br />
- foo.gz.html</td>
-
- <td>foo.html</td>
- </tr>
-
- <tr>
- <td><em>foo.html.gz.en</em></td>
-
- <td>foo<br />
- foo.html<br />
- foo.html.gz</td>
-
- <td>foo.gz</td>
- </tr>
- </table>
-
- <p>└º ╟Ñ╕ª ║╕╕Θ ╟╧└╠╞█╕╡┼⌐┐í ╛ε╢▓ ╚«└σ└┌╡╡ ╛°┤┬ └╠╕º└╗
- (<em>┐╣╕ª ╡Θ╛ε</em>, <code>foo</code>) ╟╫╗≤ ╗τ┐δ╟╥ ╝÷ └╓└╜└╗
- ╛╦ ╝÷ └╓┤┘. └╠ ░µ┐∞ └σ┴í└║ ╣«╝¡└╟ ╜╟┴ª ┴╛╖∙╕ª ╝√▒µ ╝÷ └╓╛ε╝¡,
- <em>┐╣╕ª ╡Θ╛ε</em> ╟╧└╠╖»╕╡┼⌐ ┬ⁿ┴╢╕ª ╝÷┴ñ╟╧╛╩░φ
- <code>html</code> ╞─└╧└╗ <code>shtml</code>└╠│¬
- <code>cgi</code>╖╬ ║»░µ╟╥ ╝÷ └╓┤┘┤┬ ┴í└╠┤┘.</p>
-
- <p>░Φ╝╙ ╟╧└╠╞█╕╡┼⌐┐í MIME-type└╗ (<em>┐╣╕ª ╡Θ╛ε</em>,
- <code>foo.html</code>) ╗τ┐δ╟╧░φ ╜═┤┘╕Θ (encoding ╚«└σ└┌░í
- └╓┤┘╕Θ └╠░═╡╡ ╞≈╟╘╟╧┐⌐) ╛≡╛ε ╚«└σ└┌╕ª MIME-type ╚«└σ└┌║╕┤┘
- ┐└╕Ñ┬╩┐í (<em>┐╣╕ª ╡Θ╛ε</em>, <code>foo.html.en</code>)
- ╡╬╛ε╛▀╟╤┤┘.</p>
- </section>
-
- <section id="caching"><title>─│╜¼┐í ┤δ╟╧┐⌐</title>
-
- <p>─│╜¼░í ╟Ñ╟÷└╗ └·└σ╟╧╕Θ ╟Ñ╟÷░· ┐Σ├╗ URL└╗ ┐¼░ⁿ╜├┼▓┤┘.
- ┤┘└╜╣° ▒╫ URL└╗ ┐Σ├╗╟╧╕Θ ─│╜¼┤┬ └·└σ╡╚ ╟Ñ╟÷└╗ ╗τ┐δ╟╤┤┘.
- ▒╫╖»│¬ ╝¡╣÷┐═ ╟∙╗≤└╠ ░í┤╔╟╤ └┌┐°└╬ ░µ┐∞ ├╣╣°┬░ ┐Σ├╗╟╤ ║»╟ⁿ╕╕
- ─│╜¼╡╟╛ε └╠╚─ ┐Σ├╗└║ ─│╜¼╡╚ └▀╕°╡╚ └└┤Σ└╗ ╛≥└╗ ╝÷ └╓┤┘.
- └╠╕ª ╕╖▒Γ└º╟╪ ╛╞╞──í┤┬ ║╕┼δ │╗┐δ╟∙╗≤╚─ ╣▌╚»╡╟┤┬ ╕≡╡τ ┐Σ├╗┐í
- HTTP/1.0 ┼¼╢≤└╠╛≡╞«░í ─│╜¼╕ª ╕°╟╧╡╡╖╧ ╟Ñ╜├╕ª ╟╤┤┘. ╢╟, ╛╞╞──í┤┬
- ╟∙╗≤╟╤ └└┤Σ└╟ ─│╜¼╕ª ╟π┐δ╟╧┤┬ HTTP/1.1 ╟┴╖╬┼Σ─▌└╟ ▒Γ┤╔└╗
- ┴÷┐°╟╤┤┘.</p>
-
- <p><directive
- module="mod_negotiation">CacheNegotiatedDocs</directive>
- ┴÷╜├╛ε┤┬ HTTP/1.0 ╚ú╚» ┼¼╢≤└╠╛≡╞«(║Ω╢≤┐∞└· ╚ñ└║ ─│╜¼)░í
- ║╕│╜ ┐Σ├╗┐í ┤δ╟╪ ╟∙╗≤╟╤ └└┤Σ└╗ ─│╜¼╟╥ ╝÷ └╓░╘ ╟╤┤┘. └╠ ┴÷╜├╛ε┤┬
- ╝¡╣÷│¬ ░í╗≤╚ú╜║╞« ╝│┴ñ┐í ╗τ┐δ╟╧╕τ, ╛╞▒╘╕╒╞«╕ª ╣▐┴÷╛╩┤┬┤┘.
- └╠ ┴÷╜├╛ε┤┬ HTTP/1.1 ┼¼╢≤└╠╛≡╞«└╟ ┐Σ├╗░·┤┬ ░ⁿ░Φ░í ╛°┤┘.</p>
- </section>
-
- <section id="more"><title>┤┘╕Ñ ┴ñ║╕</title>
-
- <p>│╗┐δ╟∙╗≤┐í ┤δ╟╤ ┤┘╕Ñ ┴ñ║╕┤┬ Alan J. Flavell░í ╛┤ <a
- href="http://ppewww.ph.gla.ac.uk/~flavell/www/lang-neg.html">Language
- Negotiation Notes</a>╕ª ┬ⁿ░φ╟╧╢≤. ▒╫╖»│¬ └╠ ╣«╝¡┤┬ ╛╞┴≈
- ╛╞╞──í 2.0└╟ ║»╚¡╕ª ╣▌┐╡╟╧┴÷ ╛╩└╗ ╝÷ └╓┤┘.</p>
- </section>
-
- </manualpage>
-